package fun.tan90.easy.binlog.manager.dataobject.table;

import com.mybatisflex.core.query.QueryColumn;
import com.mybatisflex.core.table.TableDef;

/**
 * 输出规则详情 表定义层。
 *
 * @author 陈浩杰
 * @since 2023-09-15
 */
public class BinlogOutputRuleCountTableDef extends TableDef {

    /**
     * 输出规则详情
     */
    public static final BinlogOutputRuleCountTableDef BINLOG_OUTPUT_RULE_COUNT = new BinlogOutputRuleCountTableDef();

    /**
     * 主键
     */
    public final QueryColumn ID = new QueryColumn(this, "id");

    /**
     * 失败次数
     */
    public final QueryColumn ERROR = new QueryColumn(this, "error");

    /**
     * ruleId
     */
    public final QueryColumn OUTPUT_RULE_ID = new QueryColumn(this, "output_rule_id");

    /**
     * 成功次数
     */
    public final QueryColumn SUCCESS = new QueryColumn(this, "success");

    /**
     * 创建人
     */
    public final QueryColumn CREATE_ID = new QueryColumn(this, "create_id");

    /**
     * outputId
     */
    public final QueryColumn OUTPUT_ID = new QueryColumn(this, "output_id");

    /**
     * 更新人
     */
    public final QueryColumn UPDATE_ID = new QueryColumn(this, "update_id");

    /**
     * 创建时间
     */
    public final QueryColumn CREATE_TIME = new QueryColumn(this, "create_time");

    /**
     * 更新时间
     */
    public final QueryColumn UPDATE_TIME = new QueryColumn(this, "update_time");

    /**
     * 更新时间
     */
    public final QueryColumn COUNT_ERROR_TIME = new QueryColumn(this, "count_error_time");

    /**
     * 更新时间
     */
    public final QueryColumn COUNT_SUCCESS_TIME = new QueryColumn(this, "count_success_time");

    /**
     * 所有字段。
     */
    public final QueryColumn ALL_COLUMNS = new QueryColumn(this, "*");

    /**
     * 默认字段，不包含逻辑删除或者 large 等字段。
     */
    public final QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, OUTPUT_RULE_ID, OUTPUT_ID, SUCCESS, COUNT_SUCCESS_TIME, ERROR, COUNT_ERROR_TIME, CREATE_ID, CREATE_TIME, UPDATE_ID, UPDATE_TIME};

    public BinlogOutputRuleCountTableDef() {
        super("", "binlog_output_rule_count");
    }

}
